1. Field of the Invention
The present invention relates generally to a hidden line processing method in converting three-dimensional image data into two-dimensional data. More particularly, the present invention relates to a processing method and an information processing apparatus for processing hidden lines, capable of processing at a high speed, in converting three-dimensional image data consisting of polygons into two-dimensional data, as well as to a program for controlling the processing method.
2. Description of the Related Art
In these years, three-dimensional CADs and mechanism simulators have become widely used, in development of industrial products. Along with this, the cases have been more frequently seen where shape recognition of products are handled as models having virtual three-dimensional space coordinate data.
On the other hand, at production sites, it is the current state that displayed screens on displays or instruction manuals for assembling are often used when models are observed and grabbed. Therefore, it is desired that a line image is displayed or created as an image in an instruction manual for assembling is created through projecting a model represented by three-dimensional coordinate data onto the two-dimensional plane of the display from a direction.
Here, in the case where a model projected onto a two-dimensional plane or a model created for an instruction manual for assembling is assembled from a plurality of parts and each of the parts consists of a plurality of polygons, the above model has data for polygons and lines constituting the parts that do not appear on the surface of its visible area.
Therefore, in the case where the three-dimensional data of the polygons contained in the model are simply converted into two-dimensional data and are displayed on a display screen or are converted into an image for an instruction manual for assembling, the lines and faces hidden by the surface of the model are also displayed. In this case, the mode image displayed or the model image drawn on the instruction manual for assembling is hard to understand.
Thus, the function of processing the hidden lines and hidden faces for not displaying the lines and faces not necessary for displaying is an essential technique for making the shapes in the image more recognizable. As such a technique for processing hidden lines and hidden faces, Z-buffer method and scan-line method are known. The Z-buffer method is a method for displaying with priority the polygons having coordinates close to the viewpoint side by having a buffer memory corresponding to a three-dimensional space and sorting the three-dimensional coordinates that a plurality of polygons constituting the model have. Therefore, the polygons having the coordinates farther that those of the polygons displayed with priority are not displayed. That is, the hidden lines are processed such that they are erased.
In addition, the scan-line method is a method for hidden-face-erasing processing by slicing the model in the vertical direction and scanning from the viewpoint the sectional views.
However, in these conventional techniques, the following drawbacks are present. In the Z-buffer method described first, though it is possible to create an image in a short time by executing the hidden-line/hidden-face processing to the raster data using the known techniques such as the Z buffer it is impossible to execute operations such as enlarging/reducing/color-changing of specific lines when creating drawings and instruction manuals for assembling. Because of such points, the method has problems in operability and display quality in the process for converting into the two-dimensional data.
In the case of the scan-line method described secondly, it is a preferable method because the above problems in the Z-buffer method are avoided and the operability is excellent when vector data are used for creating drawings and instruction manuals for assembling. However, the method has problems that it is necessary to execute hidden-line/hidden-face processing analytically and a large amount of memory consumption and processing time are necessary and, therefore, it is difficult to apply the method to a large-scale three-dimensional coordinate model.
Considering such points, a method for facilitating speedup of processing by reducing the number of polygons to be processed by selecting only the faces facing the front side against the viewpoint as the faces to be hidden-line processed has been proposed previously by the inventor (see Japanese Patent Application Laid-Open Pub. No. 1993-67219).
In addition, as other techniques relating to hidden-face processing, an invention which has a circuit for, taking the image processing of a rotating object as a target, obtaining the inner product of the normal vector of a polygon face and a rotation-processed line-of-sight vector and determining whether the polygon is visible or invisible from the value of the obtained inner product (see Japanese Patent Application Laid-Open Pub. No. 1995-37120) and an invention for, providing a Z-buffer, executing hidden-face processing using the Z-buffer method when overlapping of representative values of coordinates in all the three directions of X, Y and Z is detected and executing hidden-face processing by overwriting when any overlapping is detected (see Japanese Patent Application Laid-Open Pub. No. 2000-268191) have been presented.
Furthermore, as techniques proposed previously by the inventor, an invention in which, when three-dimensional shape information of a solid is converted into two-dimensional shape information, only the hidden lines present on the side in a specific direction against an arbitrary boundary plane crossing the solid are outputted is listed (see Japanese Patent Application Laid-Open Pub. No. 2003-1817263).